package Day21.Stream;

import javax.xml.namespace.QName;
import java.util.ArrayList;
import java.util.List;

/**
 * @version 1.0
 * @BelongsProject:IntelliJ IDEA
 * @BelongsPackage:Day21.Stream
 * @Author:hyhWTX
 * @ClassName:Demo02Stream
 * @CreateTime:2022年-10月-13日 14:20
 * @Description: TODO (一句话描述以下该类的功能)
 */

/**
 *使用Stream流的方式，遍历集合，对集合中的数据进行过滤
 * Stream流是JDK1.8之后出现的
 * 关注的是做什么，而不是怎么做。
 */

public class Demo02Stream {
    public static void main(String[] args) {
        //创建一个List集合，存储姓名
        List<String> list = new ArrayList<>();
        list.add("张无忌");
        list.add("李四");
        list.add("王五");
        list.add("刘琦");
        list.add("张三丰");
        list.add("赵薇");
        //对list集合里面的东西进行过滤，只要以张姓开头的元素，存储到一个新的集合中
        //对listA集合进行过滤，只要姓名长度为3的人，存储到一个新集合中
        //遍历listB集合
        list.stream()
                .filter(name->name.startsWith("张"))
                .filter(name->name.length()==3)
                .forEach(name->System.out.println(name));

    }
}
